﻿// Original author contact info: Owen Emlen (owene_1998@yahoo.com)
// Note: other individuals may also have contributed to this code
// Project hosted on CodePlex.com as of 1/10/2009 at http://www.codeplex.com/EmlenMud
using System.Runtime.Serialization;
using System;
using System.Threading;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace BrainTechLLC
{
    [Serializable]
    [DataContract]
    public class Signals
    {
        public Signals() { }

        [DataMember]
        protected Dictionary<string, object> _raisedSignals;
        public Dictionary<string, object> RaisedSignals
        {
            get
            {
                if (_raisedSignals == null)
                    Interlocked.CompareExchange<Dictionary<string, object>>(ref _raisedSignals, new Dictionary<string, object>(), null);

                return _raisedSignals;
            }
            set
            {
                _raisedSignals = value;
            }
        }
        [DataMember]
        public bool AbortSubsequentChanges { get; set; }
        [DataMember]
        public bool PassAllSubsequentChecks { get; set; }
    }
}
